<?php
/*
 * Created on 23/01/2007
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */

require_once "sessao.php";

/*/ Testes com o pacote database.php
require_once "database.php";
print "<pre>";
	try {

		// exemplo de como fazer uma consulta sql usando o Connection
		var_dump( Connection::Handle()->Query( 'select * from Departamento' ) );

	} catch ( Exception $e ) {
		echo $e->getMessage();
	}
print "</pre>";
//*/

// Testes com o pacote departamento.php
require_once "departamento.php";
print "<pre>";
	try {

		echo '';

		/*/ exemplo de como criar um departamento com uma conta:
		//$dep_sup = Departamento::CadastrarDepartamento( 'dep_sup', 'ssup', 'conta', 10 );
		$dep = Departamento::CadastrarDepartamento( 'departamento', 's', 'conta', 10, '' );
		var_dump( $dep );
		// como acessar os dados da conta atravez do objeto departamento:
		//var_dump( $dep->getConta() );
		//*/


		/*/ exemplo de como selecionar um departamento e uma conta
		var_dump( Departamento::SelecionarUmDepartamento( 1 ) );
		var_dump( Conta::SelecionarUmaConta( 1 ) );
		//*/

		/*/ exemplo de como atualizar um departamento
		Departamento::SelecionarUmDepartamento( 1 )->AtualizarDepartamento('dep_atualizado', 'sa1');
		var_dump( Departamento::SelecionarUmDepartamento( 1 ) );
		//*/

		/*/ Fechando departamento
		Departamento::SelecionarUmDepartamento( 2 )->FecharDepartamento();
		var_dump( Departamento::SelecionarUmDepartamento( 2 ) );
		//*/

		/*/ como selecionar todos os departamento cadastrados
		$r1 = Departamento::SelecionarDepartamento();
		var_dump( $r1 );
		//*/

		/*/ exemplo de TransferirSaldoConta()
		$d1 = Departamento::CadastrarDepartamento( 'dep1', 'sigl1', 'cont1', 10 );
		$d2 = Departamento::CadastrarDepartamento( 'dep2', 'sigl2', 'cont2', 10 );
		$d1->getConta()->TransferirSaldoConta( $d2->getConta(), 5 );
		//*/

	} catch ( Exception $e ) {
		echo $e->getMessage();
	}
print "</pre>";

// Testes com o pacote funcionario.php
require_once "funcionario.php";
print "<pre>";
	try {

		echo '';

		/*/ Classe Funcao
		$f = Funcao::CadastrarFuncao( 'f1' );
		var_dump( $f );
		$f->AtualizarFuncao( 'f1_atualizada' );
		var_dump( Funcao::SelecionarUmaFuncao( $f->getId() ) );
		$f->ExcluirFuncao();
		var_dump( Funcao::SelecionarFuncao() );
		//*/

		// Classe Permissao
		//var_dump( Permissao::Selecionar( 2 ) );
		//var_dump( Permissao::Selecionar( 1 ) );
		//*/

		// Classe Funcionario
		//$f = Funcionario::CadastrarFuncionario( 'funcionario1', 'CPF', 'func1', 'senha', Permissao::SelecionarUmaPermissao( 1 ) );
		//var_dump( $f );
		//$f = Funcionario::SelecionarUmFuncionario( 1 );
		//$f->AtualizarSenhaComoAdministrador( 'nova senha' );
		//$f->AtualizarFuncionario( 'funcionario_atualizado', $f->getCPF(), $f->getApelido(), $f->getPermissao() );
		//var_dump( $f );
		//$f = Funcionario::VerificarSenha( 'func1', 'nova senha' );
		//var_dump( $f );

		/*/ telefone
		$f = Funcionario::SelecionarUmFuncionario( 1 );
		//var_dump( $f->CadastrarTelefone( 222, 333222, TipoTelefone::Selecionar( 1 ) ) );
		$tel = $f->getTelefone();
		$tel->AtualizarTelefone( $tel->getDDD(), 33555, $tel->getTipoTelefone() );
		var_dump( $f->getTelefone() );
		//*/

		/*/ endereco
		$f = Funcionario::SelecionarUmFuncionario( 1 );
		$endereco = $f->CadastrarEndereco( TipoLogradouro::Selecionar(1), 'logradouro2', 33222, TipoComplemento::Selecionar(1), 'complemento', 'bairro', 'cidade', Estado::SelecionarUmEstado(2), 'cep' );
		$endereco->AtualizarEndereco( $endereco->getTipoLogradouro(), 'logradouro_atual3', $endereco->getNumero(), $endereco->getTipoComplemento(), $endereco->getComplemento(), $endereco->getBairro(), $endereco->getCidade(), $endereco->getEstado(), $endereco->getCEP() );
		//$enderecos = $f->getEnderecos();
		//$enderecos[0]->ExcluirEndereco();
		var_dump( $f->getEnderecos() );
		//*/

		//var_dump( Funcionario::AutenticarFuncionario( 'func1', 'nova senha', 2 ) );

	} catch ( Exception $e ) {
		echo $e->getMessage();
	}
print "</pre>";

// Testes com o pacote movimentacao.php
require_once "movimentacao.php";
print "<pre>";
	try {

		echo '';

		/*/var_dump( TipoMovimentacao::Selecionar( 1 ) );
		var_dump( TipoMovimentacao::Listar() );
		//*/

		/*/ classe Movimentacao
		$mov = Movimentacao::CadastrarMovimentacao( 1, 1, 2, null, 'teste', 15 );
		//$mov = Movimentacao::SelecionarUmaMovimentacao( 1 );
		var_dump( $mov );
		var_dump( $mov->getConta() );
		//var_dump( $mov = Movimentacao::SelecionarMovimentacao() );
		//*/

		/*/ DividirPrevisao
		//var_dump( Movimentacao::SelecionarMovimentacao('StatusMovimentacao_id = 1') );
		$mov = Movimentacao::SelecionarUmaMovimentacao( 22 );
		var_dump( $mov );
		$mov->DividirPrevisao(
					array(
						array( 1, 30 ),
						array( 2, 10 )
					)
				);
		//*/

	} catch ( Exception $e ) {
		echo $e->getMessage();
	}
print "</pre>";

?>
